--[[ Alundaio local function repack(self,stpk) if (self.repack) then local data = utils_stpk.get_abstract_data(stpk) if (data) then for k,v in pairs(self.repack) do data[k] = v end utils_stpk.set_abstract_data(data,stpk) self.repack = nil end end end --]] -- Outfits --------------------------------------------------------------------- class "se_outfit" (cse_alife_item_custom_outfit) function se_outfit:__init (section) super (section) end function se_outfit:on_register() cse_alife_item_custom_outfit.on_register( self ) -- Проверяем кастомдату обьекта на наличие стори айди. SendScriptCallback("server_entity_on_register",self,"se_outfit") end function se_outfit:on_unregister() --' Отрегистрация в таскменеджере SendScriptCallback("server_entity_on_unregister",self,"se_outfit") cse_alife_item_custom_outfit.on_unregister( self ) end function se_outfit:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_custom_outfit.can_switch_online(self) end function se_outfit:STATE_Write(stpk) cse_alife_item_custom_outfit.STATE_Write(self, stpk) end function se_outfit:STATE_Read(stpk,size) cse_alife_item_custom_outfit.STATE_Read(self, stpk,size) end -- Helmets --------------------------------------------------------------------- class "se_helmet" (cse_alife_item_helmet) function se_helmet:__init (section) super (section) end function se_helmet:on_register() cse_alife_item_helmet.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_helmet") end function se_helmet:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_helmet") cse_alife_item_helmet.on_unregister( self ) end function se_helmet:can_switch_online() return cse_alife_item_helmet.can_switch_online(self) end function se_helmet:STATE_Write(stpk) cse_alife_item_helmet.STATE_Write(self, stpk) end function se_helmet:STATE_Read(stpk,size) cse_alife_item_helmet.STATE_Read(self, stpk, size) end -- Weapons --------------------------------------------------------------------- class "se_weapon" (cse_alife_item_weapon) function se_weapon:__init (section) super (section) end function se_weapon:on_register() cse_alife_item_weapon.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_weapon") end function se_weapon:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_weapon") cse_alife_item_weapon.on_unregister( self ) end function se_weapon:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_weapon.can_switch_online(self) end function se_weapon:STATE_Read(packet, size) cse_alife_item_weapon.STATE_Read(self,packet,size) end function se_weapon:STATE_Write(stpk) cse_alife_item_weapon.STATE_Write(self, stpk) end ------------------------------------------------------------------------------------- class "se_weapon_shotgun" (cse_alife_item_weapon_shotgun) function se_weapon_shotgun:__init (section) super (section) end function se_weapon_shotgun:on_register() cse_alife_item_weapon_shotgun.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_weapon_shotgun") end function se_weapon_shotgun:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_weapon_shotgun") cse_alife_item_weapon_shotgun.on_unregister( self ) end function se_weapon_shotgun:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_weapon_shotgun.can_switch_online(self) end function se_weapon_shotgun:STATE_Write(stpk) cse_alife_item_weapon_shotgun.STATE_Write(self, stpk) end function se_weapon_shotgun:STATE_Read(stpk,size) cse_alife_item_weapon_shotgun.STATE_Read(self, stpk, size) end ------------------------------------------------------------------------------------- class "se_weapon_automatic_shotgun" (cse_alife_item_weapon_auto_shotgun) function se_weapon_automatic_shotgun:__init (section) super (section) end function se_weapon_automatic_shotgun:on_register() cse_alife_item_weapon_auto_shotgun.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_weapon_automatic_shotgun") end function se_weapon_automatic_shotgun:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_weapon_automatic_shotgun") cse_alife_item_weapon_auto_shotgun.on_unregister( self ) end function se_weapon_automatic_shotgun:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_weapon_auto_shotgun.can_switch_online(self) end function se_weapon_automatic_shotgun:STATE_Write(stpk) cse_alife_item_weapon_auto_shotgun.STATE_Write(self, stpk) end function se_weapon_automatic_shotgun:STATE_Read(stpk,size) cse_alife_item_weapon_auto_shotgun.STATE_Read(self, stpk, size) end ------------------------------------------------------------------------------------- class "se_weapon_magazined" (cse_alife_item_weapon_magazined) function se_weapon_magazined:__init (section) super (section) end function se_weapon_magazined:on_register() cse_alife_item_weapon_magazined.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_weapon_magazined") end function se_weapon_magazined:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_weapon_magazined") cse_alife_item_weapon_magazined.on_unregister( self ) end function se_weapon_magazined:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_weapon_magazined.can_switch_online(self) end function se_weapon_magazined:STATE_Write(stpk) cse_alife_item_weapon_magazined.STATE_Write(self, stpk) end function se_weapon_magazined:STATE_Read(stpk,size) cse_alife_item_weapon_magazined.STATE_Read(self, stpk, size) end ------------------------------------------------------------------------------------- class "se_weapon_magazined_w_gl" (cse_alife_item_weapon_magazined_w_gl) function se_weapon_magazined_w_gl:__init (section) super (section) end function se_weapon_magazined_w_gl:on_register() cse_alife_item_weapon_magazined_w_gl.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_weapon_magazined_w_gl") end function se_weapon_magazined_w_gl:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_weapon_magazined_w_gl") cse_alife_item_weapon_magazined_w_gl.on_unregister( self ) end function se_weapon_magazined_w_gl:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_weapon_magazined_w_gl.can_switch_online(self) end function se_weapon_magazined_w_gl:STATE_Write(stpk) cse_alife_item_weapon_magazined_w_gl.STATE_Write(self, stpk) end function se_weapon_magazined_w_gl:STATE_Read(stpk,size) cse_alife_item_weapon_magazined_w_gl.STATE_Read(self, stpk, size) end -- ITEMS ----------------------------------------------------------------------- class "se_item" (cse_alife_item) function se_item:__init (section) super (section) end function se_item:on_register() cse_alife_item.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_item") end function se_item:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_item") cse_alife_item.on_unregister( self ) end function se_item:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item.can_switch_online(self) end function se_item:STATE_Write(stpk) cse_alife_item.STATE_Write(self, stpk) end function se_item:STATE_Read(stpk,size) cse_alife_item.STATE_Read(self, stpk, size) end function se_item:switch_online() cse_alife_item.switch_online(self) end -- TORCH ----------------------------------------------------------------------------------- class "se_item_torch" (cse_alife_item_torch) function se_item_torch:__init (section) super (section) end function se_item_torch:on_register() cse_alife_item_torch.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_item_torch") end function se_item_torch:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_item_torch") cse_alife_item_torch.on_unregister( self ) end function se_item_torch:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_torch.can_switch_online(self) end function se_item_torch:STATE_Write(stpk) cse_alife_item_torch.STATE_Write(self, stpk) end function se_item_torch:STATE_Read(stpk,size) cse_alife_item_torch.STATE_Read(self, stpk, size) end ------------------------------------------------------------------------------------- class "se_physic" (cse_alife_object_physic) function se_physic:__init (section) super (section) end function se_physic:on_register() cse_alife_object_physic.on_register(self) SendScriptCallback("server_entity_on_register",self,"se_physic") end function se_physic:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_physic") cse_alife_object_physic.on_unregister(self) end function se_physic:keep_saved_data_anyway() return true end function se_physic:can_switch_online() return cse_alife_object_physic.can_switch_online(self) end function se_physic:STATE_Write(stpk) --// AWR --// Проверка наличия данных для изменения cse_abstract-части if (self.repack) then local data = utils_stpk.get_abstract_data(stpk) if (data) then data.direction = self.repack.direction self.repack.direction = nil utils_stpk.set_abstract_data(data,stpk) self.repack = nil end end --// --------------------------------------------------------- cse_alife_object_physic.STATE_Write(self,stpk) end function se_physic:STATE_Read(stpk,size) cse_alife_object_physic.STATE_Read(self,stpk,size) end ------------------------------------------------------------------------------------- class "se_lamp" (cse_alife_object_hanging_lamp) function se_lamp:__init (section) super (section) end function se_lamp:on_register() cse_alife_object_hanging_lamp.on_register(self) SendScriptCallback("server_entity_on_register",self,"se_lamp") end function se_lamp:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_lamp") cse_alife_object_hanging_lamp.on_unregister(self) end function se_lamp:keep_saved_data_anyway() return true end function se_lamp:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_object_hanging_lamp.can_switch_online(self) end function se_lamp:STATE_Write(stpk) cse_alife_object_hanging_lamp.STATE_Write(self,stpk) end function se_lamp:STATE_Read(stpk,size) cse_alife_object_hanging_lamp.STATE_Read(self,stpk,size) end -- AMMO ------------------------------------------------------------------------ class "se_ammo" (cse_alife_item_ammo) function se_ammo:__init (section) super (section) end function se_ammo:on_register() cse_alife_item_ammo.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_ammo") end function se_ammo:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_ammo") cse_alife_item_ammo.on_unregister(self) end function se_ammo:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_ammo.can_switch_online(self) end function se_ammo:STATE_Write(stpk) cse_alife_item_ammo.STATE_Write(self, stpk) end function se_ammo:STATE_Read(stpk,size) cse_alife_item_ammo.STATE_Read(self,stpk,size) end -- GRENADES -------------------------------------------------------------------------------------------------------------------------- class "se_grenade" (cse_alife_item_grenade) function se_grenade:__init (section) super (section) end function se_grenade:on_register() cse_alife_item_grenade.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_grenade") end function se_grenade:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_grenade") cse_alife_item_grenade.on_unregister(self) end function se_grenade:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_grenade.can_switch_online(self) end -- EATEBLE --------------------------------------------------------------------------------------------------------------------------- class "se_eatable" (cse_alife_item) function se_eatable:__init (section) super (section) end function se_eatable:on_register() cse_alife_item.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_eatable") end function se_eatable:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_eatable") cse_alife_item.on_unregister(self) end function se_eatable:can_switch_online() return cse_alife_item.can_switch_online(self) end function se_eatable:STATE_Read(stpk,size) cse_alife_item.STATE_Read(self,stpk,size) end function se_eatable:STATE_Write(stpk) cse_alife_item.STATE_Write(self,stpk) end function se_eatable:keep_saved_data_anyway() return true end -- INVENTORY BOX --------------------------------------------------------------------------------------------------------------------- class "se_invbox" (cse_alife_inventory_box) function se_invbox:__init (section) super (section) end function se_invbox:on_register() cse_alife_inventory_box.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_invbox") end function se_invbox:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_invbox") cse_alife_inventory_box.on_unregister(self) end function se_invbox:can_switch_online() return cse_alife_inventory_box.can_switch_online(self) end function se_invbox:STATE_Write(stpk) cse_alife_inventory_box.STATE_Write(self,stpk) end function se_invbox:STATE_Read(stpk,size) cse_alife_inventory_box.STATE_Read(self,stpk,size) end -- EXPLOSIVE ------------------------------------------------------------------------------------------------------------------------- class "se_explosive" (cse_alife_item_explosive) function se_explosive:__init (section) super (section) end function se_explosive:on_register() cse_alife_item_explosive.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_explosive") end function se_explosive:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_explosive") cse_alife_item_explosive.on_unregister(self) end function se_explosive:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_explosive.can_switch_online(self) end function se_explosive:STATE_Write(stpk) cse_alife_item_explosive.STATE_Write(self,stpk) end function se_explosive:STATE_Read(stpk,size) cse_alife_item_explosive.STATE_Read(self,stpk,size) end -- PDA ------------------------------------------------------------------------------------------------------------------------------- class "se_pda" (cse_alife_item_pda) function se_pda:__init (section) super (section) end function se_pda:on_register() cse_alife_item_pda.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_pda") end function se_pda:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_pda") cse_alife_item_pda.on_unregister(self) end function se_pda:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_pda.can_switch_online(self) end function se_pda:STATE_Write(stpk) cse_alife_item_pda.STATE_Write(self,stpk) end function se_pda:STATE_Read(stpk,size) cse_alife_item_pda.STATE_Read(self,stpk,size) end --- DETECTOR -------------------------------------------------------------------------------- class "se_detector" (cse_alife_item_detector) function se_detector:__init (section) super (section) end function se_detector:on_register() cse_alife_item_detector.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_detector") end function se_detector:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_detector") cse_alife_item_detector.on_unregister( self ) end function se_detector:can_switch_online() -- if(self.secret_item) then -- return false -- end return cse_alife_item_detector.can_switch_online(self) end function se_detector:STATE_Write(stpk) cse_alife_item_detector.STATE_Write(self,stpk) end function se_detector:STATE_Read(stpk,size) cse_alife_item_detector.STATE_Read(self,stpk,size) end --------------------- class "se_mgun" (cse_alife_mounted_weapon) function se_mgun:__init (section) super (section) end function se_mgun:on_register() cse_alife_mounted_weapon.on_register( self ) SendScriptCallback("server_entity_on_register",self,"se_mgun") end function se_mgun:on_unregister() SendScriptCallback("server_entity_on_unregister",self,"se_mgun") cse_alife_mounted_weapon.on_unregister( self ) end function se_mgun:can_switch_online() return cse_alife_mounted_weapon.can_switch_online(self) end function se_mgun:STATE_Write(stpk) cse_alife_mounted_weapon.STATE_Write(self,stpk) end function se_mgun:STATE_Read(stpk,size) cse_alife_mounted_weapon.STATE_Read(self,stpk,size) end